gesturesingle: Implement GtkGesture::cancel better than GtkEventController:reset
authorCarlos Garnacho <carlosg@gnome.org>
Thu, 12 Jun 2014 23:08:16 +0000 (01:08 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 12 Jun 2014 23:27:31 +0000 (01:27 +0200)
commit6d8842ca9611862a9730ce3370ccba36946bbe04
tree0d93bf0434c2bc77a5afbc755ae52e0b66511294
parent05810f80a4d482ccb3078b5f52eadd0f427fd088
gesturesingle: Implement GtkGesture::cancel better than GtkEventController:reset

The former can be called individually on each sequence, and the latter will
always call the former on all currently active sequences, so only implementing
resetting on cancel() works for both cases. Also, chain up on subclasses
implementing cancel.

This fixes clicking on nautilus' file list after popping up a menu, as broken
grabs are one of those situations where sequences get cancelled individually,
the "current button" wasn't properly reset, and further clicks with button != 3
were ignored.
gtk/gtkgesturelongpress.c
gtk/gtkgesturemultipress.c
gtk/gtkgesturesingle.c